using System;
using System.Collections.Generic;
using System.Text;

namespace MakeIT.SGI.ERP.Entidades
{
	public class TicketfinVO
	{
		// Impedir o uso de new para esta classe
		protected TicketfinVO() { }

		// Cria uma instancia desta classe
		public static TicketfinVO CreateVO()
		{
			TicketfinVO ticketfin = new TicketfinVO();
			ticketfin.idFilialVO = FilialVO.CreateVO();
			ticketfin.idCaixaMovtoVO = CaixamvtoVO.CreateVO();
			ticketfin.idCaixaMovtoAVO = CaixamvtoVO.CreateVO();
			return ticketfin;
		}
		public static TicketfinVO CreateVO(int idTicketFin, string origem)
		{
			TicketfinVO obj = CreateVO();
			obj.idTicketFin = idTicketFin;
			obj.origem = origem;
			return obj;
		}
		// Descrição amigavel do conteudo deste objeto
		public override string ToString()
		{
			return "Ticket: " + (idTicketFin!=null?idTicketFin.ToString():"") + " - Valor: R$ " + (valor!=null?valor.ToString():"");
		}
		// Retorna PK concatenada com ";"
		public string PKString
		{
			get { return idTicketFin.ToString(); }
		}
        public string toString
        {
            get { return this.ToString(); }
        }

		#region MEMBROS DA CLASSE
		public int idTicketFin
		{
			get { return this._idTicketFin; }
			set { this._idTicketFin = value; }
		}
		private int _idTicketFin;
		public DateTime dtTicketFin
		{
			get { return this._dtTicketFin; }
			set { this._dtTicketFin = value; }
		}
		private DateTime _dtTicketFin;
		public string origem
		{
			get { return this._origem; }
			set { this._origem = value; }
		}
		private string _origem;
		public string finalidade
		{
			get { return this._finalidade; }
			set { this._finalidade = value; }
		}
		private string _finalidade;
		public char situacao
		{
			get { return this._situacao; }
			set { this._situacao = value; }
		}
		private char _situacao;
		public decimal valor
		{
			get { return this._valor; }
			set { this._valor = value; }
		}
		private decimal _valor;
		public DateTime? dtAcolhimento
		{
			get { return this._dtAcolhimento; }
			set { this._dtAcolhimento = value; }
		}
		private DateTime? _dtAcolhimento;
		public int idFilial
		{
			get { return this._idFilial; }
			set { this._idFilial = value; 
			      if(value!=null) this.idFilialVO.idFilial = (int)value; }
		}
		private int _idFilial;
		public int? idCaixaMovto
		{
			get { return this._idCaixaMovto; }
			set { this._idCaixaMovto = value; 
			      if(value!=null) this.idCaixaMovtoVO.idCaixaMvto = (int)value; }
		}
		private int? _idCaixaMovto;
		public int? idCaixaMovtoA
		{
			get { return this._idCaixaMovtoA; }
			set { this._idCaixaMovtoA = value; 
			      if(value!=null) this.idCaixaMovtoAVO.idCaixaMvto = (int)value; }
		}
		private int? _idCaixaMovtoA;
		public int? idMvtoFin
		{
			get { return this._idMvtoFin; }
			set { this._idMvtoFin = value; }
		}
		private int? _idMvtoFin;
		public int? idMvtoFinA
		{
			get { return this._idMvtoFinA; }
			set { this._idMvtoFinA = value; }
		}
		private int? _idMvtoFinA;
		public DateTime cadastro
		{
			get { return this._Cadastro; }
			set { this._Cadastro = value; }
		}
		private DateTime _Cadastro;
		public string cadastradoPor
		{
			get { return this._CadastradoPor; }
			set { this._CadastradoPor = value; }
		}
		private string _CadastradoPor;
		public DateTime edicao
		{
			get { return this._Edicao; }
			set { this._Edicao = value; }
		}
		private DateTime _Edicao;
		public string editadoPor
		{
			get { return this._EditadoPor; }
			set { this._EditadoPor = value; }
		}
		private string _EditadoPor;
		public FilialVO idFilialVO
		{
			get { return this._idFilialVO; }
			set { this._idFilialVO = value; }
		}
		private FilialVO _idFilialVO;
		public CaixamvtoVO idCaixaMovtoVO
		{
			get { return this._idCaixaMovtoVO; }
			set { this._idCaixaMovtoVO = value; }
		}
		private CaixamvtoVO _idCaixaMovtoVO;
		public CaixamvtoVO idCaixaMovtoAVO
		{
			get { return this._idCaixaMovtoAVO; }
			set { this._idCaixaMovtoAVO = value; }
		}
		private CaixamvtoVO _idCaixaMovtoAVO;
		#endregion
	}
}
